Parameter Annotations 常用参数注解

    @QueryParam 用于从请求 URL 的查询组件中提取查询参数。我们在 MyResource 里面添加下面的方法:

    这个 PUT 方法,将会接收从URL 传递过来的参数 age,name ,而后将这些参数赋给对象 MyBean ,并且返回。

    启动服务,在 RESTClient 里面发送 PUT 请求 。成功后就能接收到一个 JSON 数据对象。

    1. "age": 28,
    2. "name": "waylau"

    我们在 MyResource 里面添加下面的方法:

    启动服务,在 RESTClient 里面发送 POST 请求调用 http://localhost:8080/webapi/myresource/pojo 接口,如果该请求包含参数,则将参数值以对象形式放回,否则,将默认值以对象形式放回

    例如,当我们的请求是http://localhost:8080/webapi/myresource/pojo?age=26&name=waylau

    则返回

    1. {
    2. "name": "waylau"
    3. }

    则返回默认值

    顾名思义是处理 HTML表单请求的。要求所请求 MIME 媒体类型为 application/x-www-form-urlencoded,并且符合指定的 HTML 编码的形式,此参数提取对于 HTML 表单 POST 请求是非常有用的。比如,我们要处理一个登陆表单,处理如下:

    1. @POST
    2. @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
    3. public Response login(@FormParam("username") String username,
    4. //业务逻辑省略...
    5. return null;
    6. }

    其他的参数注解还包括

    • @MatrixParam 从 URL 路径提取信息
    • 从 HTTP 头部提取信息
    • @CookieParam从关联在 HTTP 头部的 cookies 里提取信息
    • 允许注入参数到一个 bean
    • @Context 一般可以用于获得一个Java类型关联请求或响应的上下文。

    见 。